package com.hk.model.dto;

import lombok.Data;
import java.util.List;

/**
 * 商机跟进DTO类，用于在系统中传输商机跟进相关的数据
 * 该类使用Lombok的注解简化代码编写，减少样板代码（如getter、setter等方法）
 */
@Data // 包含了 @Getter、@Setter、@ToString、@EqualsAndHashCode 等常用注解功能，自动生成对应的方法
public class BusinessOpportunityFollowUpDTO {

    // 唯一标识ID
    private String id;

    // 客户姓名
    private String name;

    // 客户电话号码
    private String phone;

    // 客户职业，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object occupation;

    // 客户教育程度，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object education;

    // 省份
    private String provinces;

    // 城市
    private String city;

    // 微信号
    private String weixin;

    // 年龄
    private Integer age;

    // 专业，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object major;

    // 工作，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object job;

    // 薪资，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object salary;

    // QQ号码
    private String qq;

    // 性别（0可能代表某种特定标识，如女，具体含义根据业务确定）
    private String sex;

    // 期望薪资，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object expectedSalary;

    // 备注，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object remark;

    // 主题编号或标识
    private String subject;

    // 原因
    private String reasons;

    // 计划，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object plan;

    // 计划时间，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object planTime;

    // 课程ID
    private Integer courseId;

    // 其他意向
    private String otherIntention;

    // 跟进状态
    private String trackStatus;

    // 下次跟进时间
    private String nextTime;

    // 关键事项编号或标识
    private String keyItems;

    // 关键事项数组
    private List<String> keyItemsArray;

    // 跟进记录
    private String record;

    // 创建人
    private String createBy;

    // 创建时间
    private String createTime;

    // 更新人，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object updateBy;

    // 更新时间，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object updateTime;

    // 渠道（0可能代表某种特定渠道标识，具体含义根据业务确定）
    private String channel;

    // 活动ID，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object activityId;

    // 活动名称，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object activityName;

    // 活动信息，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object activityInfo;

    // 级别，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object level;

    // 状态
    private String status;

    // 分配人，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object assignBy;

    // 分配时间，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object assignTime;

    // 负责人，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object owner;

    // 负责人接手时间，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object ownerTime;

    // 错误次数
    private Integer falseCount;

    // 结束时间，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object endTime;

    // 用户ID，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object userId;

    // 转移信息，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object transfer;

    // 地区（格式为省份_城市）
    private String region;

    // 线索ID，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object clueId;

    // 开始创建时间范围的起始时间，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object beginCreateTime;

    // 开始创建时间范围的结束时间，可能为空，使用Object类型暂代，可根据实际情况调整
    private Object endCreateTime;

    // 业务ID
    private String businessId;
}